home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / prg_gen / euphor14.zip / BIND.EX < prev    next >
Text File  |  1996-07-22  |  14KB  |  1,078 lines

  1.     ---------------------------------------
  2.     --  Source Code Shrouder and Binder  --
  3.     ---------------------------------------
  4.  
  5. -- N.B. Things in square brackets [...] are optional.
  6.  
  7. -- usage 1:  bind.bat [-hide_strings] [filename[.ex]]
  8.  
  9. -- usage 2:  shroud.bat [-hide_strings] [-full_keywords] [filename[.ex]]
  10.  
  11. -- Or simply type: bind or shroud, and you will be prompted for all input.
  12.  
  13. -- Both .bat files run this one bind.ex file, but with different options.
  14.  
  15. -- Debugging tip: Before releasing a bound program to your users, make
  16. -- a shrouded version of the same source code using:  shroud -full_keywords
  17. -- and also say  -hide_strings, if that's what you did when you ran bind on 
  18. -- your program. This way you will have a semi-readable file that matches line 
  19. -- for line, and uses the same shrouded symbols, as your bound program.
  20. -- This will help you to understand any ex.err dumps that are sent to you from 
  21. -- your users. It will be easier for you see where an error has occurred,
  22. -- and to convert shrouded symbols back to their original names.
  23.  
  24. ùwarning
  25.     
  26. ùtype_check
  27. îB=1,C=0
  28. îD=0,E=1,F=2
  29. îG=1,
  30. H=2,
  31. I=3
  32. îJ=-1
  33. îK=1,L=2
  34. îM=128,
  35. N=170
  36. îO={
  37. {
  38. 105,102},{
  39. 101,110,100},{
  40. 116,104,101,110},{
  41. 112,114,111,99,101,100,117,114,101},{
  42. 101,108,115,101},{
  43. 102,111,114},{
  44. 114,101,116,117,114,110},
  45. {
  46. 100,111},{
  47. 101,108,115,105,102},{
  48. 119,104,105,108,101},{
  49. 116,121,112,101},{
  50. 99,111,110,115,116,97,110,116},{
  51. 116,111},{
  52. 97,110,100},{
  53. 111,114},
  54. {
  55. 101,120,105,116},{
  56. 102,117,110,99,116,105,111,110},{
  57. 103,108,111,98,97,108},{
  58. 98,121},{
  59. 110,111,116},{
  60. 105,110,99,108,117,100,101},
  61. {
  62. 119,105,116,104},{
  63. 119,105,116,104,111,117,116}}
  64. îP={
  65. {
  66. 108,101,110,103,116,104},{
  67. 112,117,116,115},{
  68. 105,110,116,101,103,101,114},{
  69. 115,101,113,117,101,110,99,101},{
  70. 112,111,115,105,116,105,111,110},{
  71. 111,98,106,101,99,116},
  72. {
  73. 97,112,112,101,110,100},{
  74. 112,114,101,112,101,110,100},{
  75. 112,114,105,110,116},{
  76. 112,114,105,110,116,102},
  77. {
  78. 99,108,101,97,114,95,115,99,114,101,101,110},{
  79. 102,108,111,111,114},{
  80. 103,101,116,99},{
  81. 103,101,116,115},{
  82. 103,101,116,95,107,101,121},
  83. {
  84. 114,97,110,100},{
  85. 114,101,112,101,97,116},{
  86. 97,116,111,109},{
  87. 99,111,109,112,97,114,101},{
  88. 102,105,110,100},{
  89. 109,97,116,99,104},
  90. {
  91. 116,105,109,101},{
  92. 99,111,109,109,97,110,100,95,108,105,110,101},{
  93. 111,112,101,110},{
  94. 99,108,111,115,101},{
  95. 116,114,97,99,101},{
  96. 103,101,116,101,110,118},
  97. {
  98. 115,113,114,116},{
  99. 115,105,110},{
  100. 99,111,115},{
  101. 116,97,110},{
  102. 108,111,103},{
  103. 115,121,115,116,101,109},{
  104. 100,97,116,101},{
  105. 114,101,109,97,105,110,100,101,114},
  106. {
  107. 112,111,119,101,114},{
  108. 109,97,99,104,105,110,101,95,102,117,110,99},{
  109. 109,97,99,104,105,110,101,95,112,114,111,99},{
  110. 97,98,111,114,116},{
  111. 112,101,101,107},{
  112. 112,111,107,101},
  113. {
  114. 99,97,108,108},{
  115. 115,112,114,105,110,116,102}}
  116. îQ=16,
  117. R=17,
  118. S=32,
  119. T=33,
  120. U=34,
  121. V=35,
  122. W=36,
  123. X=37
  124. îY=╬(2,32)-1
  125. îZ=╬(2,20)-1
  126. ïa(╝b)
  127. çb>0Äb<=YÄ╢(b)=b
  128. éï
  129. ïb(╝c)
  130. çc>0Äc<=ZÄ╢(c)=c
  131. éï
  132. îc=10
  133. îd=1,
  134. e=2,
  135. f=3,
  136. g=4,
  137. h=5,
  138. i=6,
  139. j=7,
  140. k=8,
  141. l=9,
  142. m=10
  143. ïn(«o)
  144. ç½(o)=c
  145. éï
  146. æo(¡p)
  147. ç╧(Q,p)
  148. éæ
  149. äp(a q)
  150. ╨(R,q)
  151. éä
  152. æq(¡r)
  153. ç╧(S,r)
  154. éæ
  155. är(b s)
  156. ╨(T,s)
  157. éä
  158. æs(¡t,n u)
  159. ç╧(U,{t,u})
  160. éæ
  161. æt(╝u)
  162. ¡v,w,x,y
  163. v=═(u,#100)
  164. u=╢(u/#100)
  165. w=═(u,#100)
  166. u=╢(u/#100)
  167. x=═(u,#100)
  168. u=╢(u/#100)
  169. y=═(u,#100)
  170. ç{v,w,x,y}
  171. éæ
  172. æu(«v)
  173. çv[1]+
  174. v[2]*#100+
  175. v[3]*#10000+
  176. v[4]*#1000000
  177. éæ
  178. æw(╝x,¡y)
  179. «v
  180. üx<0â
  181. x=x+╬(2,y)
  182. éü
  183. v=╗(0,y)
  184. åz=1ìyê
  185. v[z]=═(x,2)
  186. x=╢(x/2)
  187. éå
  188. çv
  189. éæ
  190. æx(«y)
  191. ╝v,z
  192. v=0
  193. z=1
  194. åBA=1ì½(y)ê
  195. üy[BA]â
  196. v=v+z
  197. éü
  198. z=z+z
  199. éå
  200. çv
  201. éæ
  202. äy(¡v)
  203. ╨(V,v)
  204. éä
  205. äz(¡BA)
  206. ╨(W,BA)
  207. éä
  208. äv(«BA)
  209. ╨(X,BA)
  210. éä
  211. îBA=25
  212. Ææget_position()
  213. ç╧(BA,0)
  214. éæ
  215. îBB=1,
  216. BC=2,
  217. BD=3,
  218. BE=4,
  219. BF=5,
  220. BG=6,
  221. BH=7,
  222. BI=8
  223. îBJ={
  224. 43,45,42,47,91,93,40,41,123,125,44,46,61,38,39,34,60,62}
  225. îBK=-999
  226. îBL=1,BM=2,BN=3
  227. ïBO(¡BP)
  228. ç╛(BP,{BN,BM,BL})
  229. éï
  230. ïBP(¡BQ)
  231. çBQ>=-1 
  232. éï
  233. ïBQ(¡BR)
  234. çBR>=JÄBR<=255ÅBR=BK
  235. éï
  236. ïBR(¡BS)
  237. çBS>=0
  238. éï
  239. ïBS(¡BT)
  240. çBT=BÅBT=C
  241. éï
  242. BS BT 
  243. «BU
  244. ¡BV
  245. äBW()
  246. BU=╗(BC,255)
  247. BU[97..122]=BD
  248. BU[65..90]=BD
  249. BU[95]=BD
  250. BU[48..57]=BB
  251. BU[35]=BI
  252. BU[91]=BE
  253. BU[93]=BE
  254. BU[40]=BE
  255. BU[41]=BE
  256. BU[123]=BE
  257. BU[125]=BE
  258. BU[39]=BF
  259. BU[34]=BF
  260. BU[32]=BH
  261. BU[9]=BH
  262. BU[10]=BH
  263. BU[45]=BG
  264. éä
  265. BQ BX
  266. BX=BK
  267. æBY(BP BZ)
  268. BQ Ba
  269. üBX=BKâ
  270. ç╖(BZ)
  271. à
  272. Ba=BX
  273. BX=BK
  274. çBa
  275. éü
  276. éæ
  277. äBZ(BQ Ba)
  278. BX=Ba
  279. éä
  280. BP Ba,Bb
  281. BS Bc 
  282. BQ Bd
  283. Bd=BK
  284. äBe(BQ Bf)
  285. ü╛(Bf,{
  286. 32,9,10})â
  287. üBd=10â
  288. ç
  289. éü
  290. üBf !=10â
  291. üBd>MÅ╛(Bd,BJ)â
  292. ç
  293. ë╛(Bd,{
  294. 32,9})â
  295. ç
  296. éü
  297. éü
  298. ëBf>MÅ╛(Bf,BJ)â
  299. ü╛(Bd,{
  300. 32,9})â
  301. Bd=BK
  302. éü
  303. éü
  304. üBd !=BKâ
  305. ¼(Ba,Bd)
  306. éü
  307. Bd=Bf 
  308. éä
  309. äBf(«Bg)
  310. üBd !=BKâ
  311. ¼(Ba,Bd)
  312. Bd=BK
  313. éü
  314. ¼(Ba,Bg)
  315. éä
  316. «Bg 
  317. Bg={}
  318. äBh(«Bi)
  319. Bg=Bg&Bi
  320. éä
  321. BR Bi
  322. Bi=1
  323. BO Bj
  324. Bj=BM
  325. BS Bk
  326. Bk=C
  327. ¡Bl,Bm
  328. Bl=1
  329. Bm=1
  330. «Bn,Bo,Bp
  331. Bn={{},{}}
  332. Bo={{{},{}}}
  333. Bp={{},{}}
  334. «Bq
  335. Bq={}
  336. æBr()
  337. BR Bs,Bt
  338. «Bu
  339. ü½(Bg)>0â
  340. Bu=Bg[1]
  341. Bg=Bg[2..½(Bg)]
  342. çBu
  343. éü
  344. Bu={}
  345. Bt=Bi
  346. èBê
  347. Bs=═(Bt,52)
  348. Bt=╢(Bt/52)
  349. üBs<26â
  350. Bu=65+Bs&Bu
  351. à
  352. Bu=97+Bs-26&Bu 
  353. éü
  354. üBt=0â
  355. É
  356. éü
  357. éè
  358. Bi=Bi+1
  359. ü╛(Bu,O)â
  360. çBr()
  361. ë╛(Bu,P)â
  362. çBr()
  363. ë╛(Bu,Bn[L])â
  364. çBr()
  365. à
  366. çBu
  367. éü
  368. éæ
  369. æBs(«Bt)
  370. «Bu
  371. BR Bv
  372. BS Bw
  373. Bv=0
  374. Bv=╛(Bt,Bp[K])
  375. üBvâ
  376. çBp[L][Bv]
  377. éü
  378. Bv=╛(Bt,Bn[K])
  379. üBvâ
  380. çBn[L][Bv]
  381. éü
  382. Bv=╛(Bt,Bo[Bl][K])
  383. üBvâ
  384. çBo[Bl][L][Bv]
  385. éü
  386. üBj=BLâ
  387. Bu=Br()
  388. Bp[K]=▒(Bp[K],Bt)
  389. Bp[L]=▒(Bp[L],Bu)
  390. à
  391. üöBkâ
  392. Bj=BM
  393. éü
  394. üBj=BNâ
  395. ü½(Bq)=0â
  396. Bu=Bt 
  397. Bw=C
  398. ü╛(Bu,Bn[L])â
  399. Bw=B
  400. éü
  401. åBx=1ì½(Bo)ê
  402. ü╛(Bu,Bo[Bx][L])â
  403. Bw=B
  404. éü
  405. éå
  406. üBwâ
  407. ┤(F,
  408. {
  409. 80,108,101,97,115,101,32,114,101,110,97,109,101,32,103,108,111,98,97,108,
  410. 32,115,121,109,98,111,108,32,37,115,32,116,111,32,115,111,109,101,116,104,
  411. 105,110,103,32,108,111,110,103,101,114,46,10},
  412. {Bu})
  413. ¼(F,
  414. {
  415. 73,116,32,105,115,32,117,110,102,111,114,116,117,110,97,116,101,108,121,32,
  416. 97,108,114,101,97,100,121,32,105,110,32,117,115,101,32,97,115,32,97,32,
  417. 115,104,111,114,116,32,115,104,114,111,117,100,101,100,32,110,97,109,101,46,
  418. 10})
  419. ╤(1)
  420. éü
  421. à
  422. Bu=Br()
  423. éü
  424. Bn[K]=▒(Bn[K],Bt)
  425. Bn[L]=▒(Bn[L],Bu)
  426. à
  427. Bu=Br()
  428. Bo[Bl][K]=▒(
  429. Bo[Bl][K],Bt)
  430. Bo[Bl][L]=▒(
  431. Bo[Bl][L],Bu)
  432. éü
  433. éü
  434. çBu
  435. éæ
  436. «Bt 
  437. îBu=97-65 
  438. æBv(░Bw)
  439. ¡Bx
  440. åBy=1ì½(Bw)ê
  441. Bx=Bw[By]
  442. üBx>=97â
  443. üBx<=122â
  444. Bw[By]=Bx-Bu
  445. éü
  446. éü
  447. éå
  448. çBw
  449. éæ
  450. æBw(«Bx)
  451. ¡By
  452. By=1
  453. åBz=1ì½(Bx)ê
  454. üBx[Bz]=92â
  455. By=Bz+1
  456. éü
  457. éå
  458. çBv(Bx[By..½(Bx)])
  459. éæ
  460. «Bx 
  461. Bx={}
  462. æBy(«Bz)
  463. Bz=Bw(Bz)
  464. ü╛(Bz,Bx)â
  465. çB
  466. à
  467. Bx=▒(Bx,Bz)
  468. çC
  469. éü
  470. éæ
  471. æBz()
  472. BQ CA
  473. «CB
  474. BP CC
  475. CA=BY(Bb)
  476. èCA=32ÅCA=9ê
  477. CA=BY(Bb)
  478. éè
  479. CB={}
  480. èBU[CA]!=BHÄCA !=Jê
  481. CB=CB&CA
  482. CA=BY(Bb)
  483. éè
  484. üBy(CB)â
  485. çBb
  486. éü
  487. Bq=▒(Bq,{Bb,Bl})
  488. Bm=Bm+1
  489. Bl=Bm
  490. Bo=▒(Bo,{{},{}})
  491. ü½(CB)>0â
  492. üCB[1]=92Å╛(58,CB)â
  493. CC=┬(CB,{
  494. 114})
  495. üCC=-1â
  496. ¼(F,{
  497. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,105,110,99,108,117,100,
  498. 101,32,102,105,108,101,58,32}&CB&10)
  499. éü
  500. çCC
  501. éü
  502. éü
  503. CC=┬(Bt&CB,{
  504. 114})
  505. üCC=-1â
  506. CC=┬(┼({
  507. 69,85,68,73,82})&{
  508. 92,73,78,67,76,85,68,69,92}&CB,{
  509. 114})
  510. üCC=-1â
  511. ¼(F,{
  512. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,105,110,99,108,117,100,
  513. 101,32,102,105,108,101,58,32}&CB&10)
  514. éü
  515. éü
  516. çCC
  517. éæ
  518. æCA()
  519. BP CB
  520. ├(Bb)
  521. ü½(Bq)=0â
  522. ç-1
  523. éü
  524. CB=Bq[½(Bq)][1]
  525. Bl=Bq[½(Bq)][2]
  526. Bq=Bq[1..½(Bq)-1]
  527. çCB
  528. éæ
  529. æCC(╝CB)
  530. «CD
  531. CD={}
  532. è1ê
  533. CD=48+═(CB,10)&CD
  534. CB=╢(CB/10)
  535. üCB=0â
  536. çCD
  537. éü
  538. éè
  539. éæ
  540. äCB(BQ CD)
  541. üCD=110â
  542. Bf(CC(10))
  543. ëCD=116â
  544. Bf(CC(9))
  545. ëCD=114â
  546. Bf(CC(13))
  547. à
  548. Bf(CC(CD))
  549. éü
  550. éä
  551. îCD=1,CE=0
  552. îCF=M+╛({
  553. 101,110,100},O),
  554. CG=M+╛({
  555. 112,114,111,99,101,100,117,114,101},O),
  556. CH=M+╛({
  557. 102,117,110,99,116,105,111,110},O),
  558. CI=M+╛({
  559. 116,121,112,101},O),
  560. CJ=M+╛({
  561. 103,108,111,98,97,108},O),
  562. CK=M+╛({
  563. 105,110,99,108,117,100,101},O),
  564. CL=M+╛({
  565. 119,105,116,104},O),
  566. CM=M+╛({
  567. 119,105,116,104,111,117,116},O)
  568. æCN(BS CO)
  569. BR CP,CQ,CR 
  570. BQ CS,CT
  571. «CU,CV
  572. èBê
  573. CT=BY(Bb)
  574. üCT=Jâ
  575. çJ
  576. éü
  577. CP=BU[CT]
  578. üCP=BHâ
  579. Be(CT)
  580. ëCP=BDâ
  581. CU={CT}
  582. èBê
  583. CT=BY(Bb)
  584. CP=BU[CT]
  585. üCP=BDâ
  586. CU=CU&CT
  587. ëCP=BBâ
  588. CU=CU&CT
  589. à
  590. BZ(CT)
  591. É
  592. éü
  593. éè
  594. CQ=╛(CU,O)
  595. üCQâ
  596. üö╛(CU,{{
  597. 105,110,99,108,117,100,101},CK})â
  598. üö╛(CU,{{
  599. 103,108,111,98,97,108},CJ})Å
  600. ½(Bq)=0â
  601. üBTÄCOâ
  602. Be(M+CQ)
  603. à
  604. Bf(CU)
  605. éü
  606. éü
  607. éü
  608. à
  609. CQ=╛(CU,P)
  610. üCQâ
  611. üBTÄCOâ
  612. Be(N+CQ)
  613. à
  614. Bf(CU)
  615. éü
  616. à
  617. üCOâ
  618. Bf(Bs(CU))
  619. à
  620. Bf(CU)
  621. éü
  622. éü
  623. éü
  624. çCU
  625. ëCP=BCÅCP=BEâ
  626. Be(CT)
  627. çCT 
  628. ëCP=BBâ
  629. èBU[CT]=BBÅ╛(CT,{
  630. 101,69})ê
  631. Be(CT)
  632. CT=BY(Bb)
  633. éè
  634. BZ(CT)
  635. ëCP=BIâ
  636. Be(CT)
  637. CT=BY(Bb)
  638. èBU[CT]=BBÅ╛(CT,{
  639. 65,66,67,68,69,70})ê
  640. Be(CT)
  641. CT=BY(Bb)
  642. éè
  643. BZ(CT)
  644. ëCP=BGâ
  645. CT=BY(Bb)
  646. ü(CT=45)â
  647. CV=╕(Bb)
  648. Be(10)
  649. à
  650. Be(45)
  651. BZ(CT)
  652. éü
  653. à
  654. CV={}
  655. èBê
  656. CS=BY(Bb)
  657. üCS=10ÅCS=Jâ
  658. ¼(F,{
  659. 109,105,115,115,105,110,103,32,99,108,111,115,105,110,103,32,113,117,111,116,
  660. 101,10})
  661. ╤(1)
  662. éü
  663. üCS=CTâ
  664. É
  665. éü
  666. CV=CV&CS
  667. üCS=92â
  668. CS=BY(Bb)
  669. CV=CV&CS
  670. éü
  671. éè
  672. üBcâ
  673. üCT=39â
  674. ü½(CV)=0â
  675. ¼(F,{
  676. 110,111,116,104,105,110,103,32,98,101,116,119,101,101,110,32,115,105,110,103,
  677. 108,101,45,113,117,111,116,101,115,10})
  678. ╤(1)
  679. éü
  680. Be(32)
  681. üCV[1]=92â
  682. CB(CV[2])
  683. à
  684. Bf(CC(CV[1]))
  685. éü
  686. à
  687. Be(123)
  688. CR=1
  689. èCR<=½(CV)ê
  690. ü═(CR,20)=1â
  691. Be(10)
  692. éü
  693. CT=CV[CR]
  694. üCT=92â
  695. CR=CR+1
  696. CT=CV[CR]
  697. CB(CT)
  698. à
  699. Bf(CC(CT))
  700. éü
  701. üCR<½(CV)â
  702. Be(44)
  703. éü
  704. CR=CR+1
  705. éè
  706. Be(125)
  707. éü
  708. à
  709. Be(CT)
  710. Bf(CV)
  711. Be(CS)
  712. éü
  713. éü
  714. éè
  715. éæ
  716. äCO()
  717. ¼(Ba,10&CM)
  718. ¼(Ba,{
  719. 119,97,114,110,105,110,103,10})
  720. éä
  721. äCP()
  722. ░CQ,CR
  723. CO()
  724. CQ=BK
  725. èBê
  726. CQ=CN(CD)
  727. ü╜(CQ,J)=0â
  728. Bb=CA()
  729. üBb=-1â
  730. Be(BK)
  731. ç
  732. éü
  733. ë╛(CQ,{{
  734. 101,110,100},CF})â
  735. CQ=CN(CD)
  736. ü╛(CQ,{{
  737. 112,114,111,99,101,100,117,114,101},{
  738. 102,117,110,99,116,105,111,110},{
  739. 116,121,112,101},
  740. CG,CH,CI})â
  741. Bj=BM
  742. Bh(Bp[L])
  743. Bp={{},{}}
  744. éü
  745. ë╛(CQ,{{
  746. 103,108,111,98,97,108},CJ})â
  747. Bj=BN
  748. Bk=B
  749. è╛(CQ,{{
  750. 103,108,111,98,97,108},CJ})ê
  751. CQ=CN(CD)
  752. CQ=CN(CD)
  753. CQ=CN(CD)
  754. ü╜(CQ,40)=0â
  755. Bj=BL
  756. ëö╛(CQ,{44,61,{
  757. 103,108,111,98,97,108},CJ})â
  758. Bj=BM
  759. éü
  760. éè
  761. ë╛(CQ,{{
  762. 112,114,111,99,101,100,117,114,101},{
  763. 102,117,110,99,116,105,111,110},{
  764. 116,121,112,101},
  765. CG,CH,CI})â
  766. CQ=CN(CD)
  767. Bj=BL
  768. ë╛(CQ,{{
  769. 105,110,99,108,117,100,101},CK})â
  770. Bb=Bz()
  771. üBb=-1â
  772. ç
  773. éü
  774. ë╛(CQ,{{
  775. 119,105,116,104},{
  776. 119,105,116,104,111,117,116},CL,CM})â
  777. CR=CN(CE)
  778. ü╜(CQ,{
  779. 119,105,116,104})=0Ä
  780. ╜(CR,{
  781. 119,97,114,110,105,110,103})=0â
  782. CO()
  783. éü
  784. ë╜(CQ,44)=0â
  785. Bk=B
  786. à
  787. Bk=C
  788. éü
  789. éè
  790. éä
  791. æCS(«CT)
  792. è½(CT)>0ê
  793. ü╛(CT[½(CT)],{
  794. 10,13,9,32})â
  795. CT=CT[1..½(CT)-1]
  796. à
  797. É
  798. éü
  799. éè
  800. çCT
  801. éæ
  802. äCU()
  803. ¼(F,
  804. {
  805. 117,115,97,103,101,32,49,58,32,32,98,105,110,100,46,98,97,116,32,91,
  806. 45,104,105,100,101,95,115,116,114,105,110,103,115,93,32,91,102,105,108,101,
  807. 110,97,109,101,91,46,101,120,93,93,10})
  808. ¼(F,
  809. {
  810. 117,115,97,103,101,32,50,58,32,32,115,104,114,111,117,100,46,98,97,116,
  811. 32,91,45,104,105,100,101,95,115,116,114,105,110,103,115,93,32,91,45,102,
  812. 117,108,108,95,107,101,121,119,111,114,100,115,93,32,91,102,105,108,101,110,
  813. 97,109,101,91,46,101,120,93,93,10})
  814. ╤(1)
  815. éä
  816. îCV=157000
  817. äCQ()
  818. «CR,CT,CW,CX
  819. BR CY,CZ
  820. ¡Ca,Cb,Cc,Cd
  821. ░Ce
  822. «Cf
  823. CT=┴()
  824. Bc=C
  825. BT=B
  826. Cd=3 
  827. èCd<=½(CT)ê
  828. ü┐({
  829. 72,73,68,69,95,83,84,82,73,78,71,83},Bv(CT[Cd]))â
  830. Bc=B
  831. CT=CT[1..Cd-1]&CT[Cd+1..½(CT)]
  832. ë┐({
  833. 70,85,76,76,95,75,69,89,87,79,82,68,83},Bv(CT[Cd]))â
  834. BT=C
  835. CT=CT[1..Cd-1]&CT[Cd+1..½(CT)]
  836. ë╛(63,CT[Cd])â
  837. CU()
  838. à
  839. Cd=Cd+1
  840. éü
  841. éè
  842. ü½(CT)=2â
  843. BV=G
  844. CW={}
  845. ë½(CT)=3â
  846. ü┐({
  847. 83,72,82,79,85,68,95,79,78,76,89},Bv(CT[3]))â
  848. BV=H
  849. CW={}
  850. ë┐({
  851. 78,79,95,83,72,82,79,85,68},Bv(CT[3]))â
  852. BV=I
  853. CW={}
  854. à
  855. BV=G
  856. CW=CT[3]
  857. éü
  858. ë½(CT)=4â
  859. CW=CT[4]
  860. ü┐({
  861. 83,72,82,79,85,68,95,79,78,76,89},Bv(CT[3]))â
  862. BV=H
  863. ë┐({
  864. 78,79,95,83,72,82,79,85,68},Bv(CT[3]))â
  865. BV=I
  866. à
  867. CU()
  868. éü
  869. à
  870. CU()
  871. éü
  872. üBV !=Hâ
  873. BT=B
  874. éü
  875. Cf=t(╧(0,0))
  876. ü½(CW)=0â
  877. ¼(E,{
  878. 78,97,109,101,32,111,102,32,69,117,112,104,111,114,105,97,32,102,105,108,
  879. 101,32,116,111,32})
  880. üBV=Gâ
  881. ¼(E,{
  882. 98,105,110,100,58,32})
  883. ëBV=Hâ
  884. ¼(E,{
  885. 115,104,114,111,117,100,58,32})
  886. à
  887. ¼(E,{
  888. 98,105,110,100,32,40,119,105,116,104,111,117,116,32,115,104,114,111,117,100,
  889. 105,110,103,41,58,32})
  890. éü
  891. CW=CS(╕(D))
  892. ¼(E,10)
  893. ü½(CW)=0â
  894. ╤(1)
  895. éü
  896. ü½(CT)=½(┴())ÄBV !=Iâ
  897. ¼(E,
  898. {
  899. 72,105,100,101,32,115,116,114,105,110,103,115,32,97,115,32,115,101,113,117,
  900. 101,110,99,101,115,32,111,102,32,65,83,67,73,73,32,99,111,100,101,115,
  901. 63,10})
  902. ¼(E,
  903. {
  904. 40,98,101,116,116,101,114,32,115,104,114,111,117,100,105,110,103,32,98,117,
  905. 116,32,102,105,108,101,32,119,105,108,108,32,98,101,32,98,105,103,103,101,
  906. 114,41,58,32,40,121,41})
  907. CR=get_position()
  908. »(CR[1],CR[2]-2)
  909. Bc=ö┐({
  910. 110},╕(D))
  911. ¼(E,10)
  912. éü
  913. éü
  914. Bb=┬(CW,{
  915. 114})
  916. üBb=-1â
  917. CZ=1
  918. èCZ<=½(CW)ê
  919. üCW[CZ]=46â
  920. CZ=CZ+1
  921. à
  922. É
  923. éü
  924. éè
  925. üö╛(46,CW[CZ..½(CW)])â
  926. CW=CW&{
  927. 46,101,120}
  928. éü
  929. Bb=┬(CW,{
  930. 114})
  931. üBb=-1â
  932. ┤(2,{
  933. 99,111,117,108,100,110,39,116,32,111,112,101,110,32,37,115,10},{CW})
  934. ç
  935. éü
  936. éü
  937. CY=½(CW)
  938. èCW[CY]!=92ê
  939. CY=CY-1
  940. üCY=0â
  941. É
  942. éü
  943. éè
  944. Bt=CW[1..CY]
  945. CX=CW[CY+1..½(CW)]
  946. BW()
  947. üBV=GÅBV=Iâ
  948. CZ=½(CX)
  949. èCZ>=1ê
  950. üCX[CZ]=46â
  951. É
  952. éü
  953. CZ=CZ-1
  954. éè
  955. üCX[CZ]=46â
  956. CX=CX[1..CZ]&{
  957. 101,120,101}
  958. à
  959. CX=CX&{
  960. 46,101,120,101}
  961. éü
  962. à
  963. ¼(E,{
  964. 78,97,109,101,32,102,111,114,32,110,101,119,32,115,104,114,111,117,100,101,
  965. 100,32,69,117,112,104,111,114,105,97,32,102,105,108,101,58,32})
  966. CX=CS(╕(D))
  967. ¼(E,10)
  968. ü½(CX)=0â
  969. ╤(1)
  970. éü
  971. éü
  972. ü╜(Bv(CX),Bv(CW))=0â
  973. ¼(E,{
  974. 68,111,110,39,116,32,111,118,101,114,119,114,105,116,101,32,116,104,101,32,
  975. 111,114,105,103,105,110,97,108,32,115,111,117,114,99,101,32,102,105,108,101,
  976. 33,10})
  977. ç
  978. éü
  979. üBV=Hâ
  980. Ba=┬(CX,{
  981. 114})
  982. üBa !=-1â
  983. ¼(E,CX&{
  984. 32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,44,32,111,118,101,
  985. 114,119,114,105,116,101,63,32,40,110,41})
  986. ├(Ba)
  987. CR=get_position()
  988. »(CR[1],CR[2]-2)
  989. üö┐({
  990. 121},╕(D))â
  991. ç
  992. éü
  993. ¼(E,10)
  994. éü
  995. éü
  996. Ba=┬(CX,{
  997. 119,98})
  998. üBa=-1â
  999. ¼(E,{
  1000. 67,111,117,108,100,110,39,116,32,111,112,101,110,32}&CX&{
  1001. 32,102,111,114,32,119,114,105,116,105,110,103,10})
  1002. ç
  1003. éü
  1004. üBV !=Hâ
  1005. Ce=┼({
  1006. 69,85,68,73,82})
  1007. ü╝(Ce)â
  1008. Ce={
  1009. 67,58,92,69,85,80,72,79,82,73,65}
  1010. éü
  1011. Ce=Ce&{
  1012. 92,66,73,78,92}
  1013. Ca=┬(Ce&{
  1014. 80,68,69,88,46,69,88,69},{
  1015. 114,98})
  1016. üCa=-1â
  1017. ü┐({
  1018. 66,73,78,68,46,69,88,69},CT[1])â
  1019. ¼(E,{
  1020. 117,115,101,32,98,105,110,100,46,98,97,116,32,111,114,32,115,104,114,111,
  1021. 117,100,46,98,97,116,10})
  1022. ╤(1)
  1023. éü
  1024. Ca=┬(CT[1],{
  1025. 114,98})
  1026. üCa=-1â
  1027. ┤(E,{
  1028. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,37,115,32,111,114,32,
  1029. 37,115,10},
  1030. {Ce&{
  1031. 80,68,69,88,46,69,88,69},CT[1]})
  1032. ╤(1)
  1033. éü
  1034. éü
  1035. Cc=0
  1036. ¼(E,{
  1037. 67,114,101,97,116,105,110,103,32}&CX&{
  1038. 32,46,46,46,10})
  1039. èBê
  1040. Cb=╖(Ca)
  1041. üCb=-1â
  1042. É
  1043. éü
  1044. ¼(Ba,Cb)
  1045. Cc=Cc+1
  1046. éè
  1047. ├(Ca)
  1048. üCc<CVâ
  1049. ¼(F,
  1050. {
  1051. 89,111,117,32,99,97,110,39,116,32,98,105,110,100,32,117,115,105,110,103,
  1052. 32,116,104,101,32,67,111,109,112,108,101,116,101,32,69,100,105,116,105,111,
  1053. 110,32,111,102,32,69,88,46,69,88,69,46,10})
  1054. ¼(F,
  1055. {
  1056. 80,68,69,88,46,69,88,69,32,40,80,117,98,108,105,99,32,68,111,109,
  1057. 97,105,110,41,32,109,117,115,116,32,98,101,32,112,114,101,115,101,110,116,
  1058. 32,105,110,32,116,104,101,32,69,117,112,104,111,114,105,97,32,66,73,78,
  1059. 32,100,105,114,101,99,116,111,114,121,46,10})
  1060. éü
  1061. ¼(Ba,Cf)
  1062. üBV=Iâ
  1063. èBê
  1064. Cb=╖(Bb)
  1065. üCb=-1â
  1066. É
  1067. éü
  1068. ¼(Ba,Cb)
  1069. éè
  1070. ├(Bb)
  1071. ├(Ba)
  1072. ç
  1073. éü
  1074. éü
  1075. CP()
  1076. éä
  1077. CQ()
  1078.